#ifndef ML_FRUSTUM_H
#define ML_FRUSTUM_H

#ifdef JMBC_INSIDE

typedef unsigned int MLFrustum;

#endif

// Context

void
mlFrustumCreateContext(void);

// Creation / Deletion

void
mlGenFrustums(unsigned int n, unsigned int *frustums);

void
mlDeleteFrustums(unsigned int n, unsigned int *frustums);

// Operation

void
mlFrustumCalc(unsigned int id);

int
mlFrustumPoint(unsigned int id, const float *point);

int
mlFrustumSphere(unsigned int id, const float *sphere);

int
mlFrustumTriangle(unsigned int id, const float *triangle);

int
mlFrustumCube(unsigned int id, const float *cube);

int
mlFrustumPolygon(unsigned int id, const float *points, unsigned int npoints);

#endif

